package interpreter.source;

/**
 * 抽象表达式
 *
 * 解释器模式(interpreter) -- 给定一个语言，定义它的文法的一种表示，
 * 并定义一个解释器，这个解释器使用该表示来解释语言中的句子
 *
 * 当一种特定类型的问题发生的频率足够高，那么可能就值得将该问题的各个实例
 * 表述为一个简单语言中的句子。这样子就可以构建一个解释器，通过解释这些句子
 * 解决该问题
 *
 * 例如正则表达式，定义了待匹配字符串的集合，解释器为正则表达式定义了文法：
 * 如何表示一个特定的正则表达式、如何解释一个特点的正则表达式
 *
 * 好处：
 * 使用类来表示文法规则，可以使用继承来改变或扩展该文法
 *
 * @author cheng:
 * @date 2019/4/26 12:00
 */
public abstract class AbstractExpression {
    public abstract void interpret(Context context);
}
